Known memory devices include volatile and non-volatile memory devices. Volatile memory devices, for example static random access memory devices (SRAMs) or dynamic random access memory devices (DRAMs) lose information stored in their memory cells when their operating power is switched off. In non-volatile memory devices, for example in a flash memory, stored information is kept even if its operating power is switched off.
A memory device may include a plurality of memory cells.
In a case of a binary non-volatile memory cell, the memory cell may be in one of two states, which may be referred to as 0 and 1, respectively.
If the memory cell is in the 0 state, a write process of writing a 0 may leave the memory cell in the 0 state, whereas a process of writing a 1 may bring the memory cell to a 1 state. In other words, in the 0 state, an arbitrary value of the binary values may be written to the memory cell. The writing process may also be referred to as a programming of the memory cell.
If the memory cell is in the 1 state, the memory cell remains in the 1 state, irrespective of which of the binary values is supposed to be written to the memory cell by a writing process, which may be disadvantageous. It may be possible to set all memory cells in a region of a memory device to the 0 state. This may be referred to as clearing of the memory device. After a clearing of the memory cells of the region, arbitrary values may (e.g. again) be written to the memory cells of the cleared region. It may thus be a laborious process to write information to a flash memory device, if the memory cells of the device have earlier been used for storing information and thus have been programmed.
In contrast to volatile memory devices, e.g. flash memory devices, non-volatile device, e.g. MRAM memory devices, which may include a plurality of memory cells, may store information permanently, even if no operating power is applied. It may be possible to write arbitrary values of the binary values to a memory cell of the plurality of memory cells of the MRAM memory device, independent of a current state of the memory cell.
In known MRAM memory devices, quantum effects may cause erroneous values in the memory cells, which may be disadvantageous. A number of errors may depend on external parameters. The number of errors may for example depend on temperature, i.e. increase with increasing temperature. The number of errors may increase with time.
For keeping the number of errors small, even after a passage of time, data stored in the memory cells may be stored as code words of an error correcting code. Thus, by using an error correction process, the number of errors may be kept small. Potentially erroneous data may be read and be corrected using the error correcting code. The corrected data may be written back to the memory cells, such that the original data may in many cases be reproduced error-free. Here, it may be necessary that it is possible for the errors to be corrected by applying the code. For correcting the errors, an operating power may be required. If an MRAM memory device is not used for a long time, it may be likely that a relatively large number of errors is present in the memory cells. In a state in which the memory device is not used, no read processes (also referred to as read accesses) and no write process (also referred to as write accesses) are executed. In many cases, no operating power may be present.
A state of a memory device in which no read process and no write process takes place may be referred to as an inactive state, an inactive mode, an inactive phase or an idle phase. Such an inactive state may be a regular state in many or even most non-volatile memory devices. It may for example occur in a memory device that is used in a vehicle, for example in a car, a bus, a commercial vehicle, etc. It may happen that such a vehicle is not used for a certain amount of time, for example several days or weeks. During this time, the memory device may possibly not be provided with operating power, which might be required for correcting errors in memory cells of the memory device, and for restoring correct values in the memory cells.
From the inactive state, the memory device may be transferred into an active state, in which read and/or write processes may take place. Such a transitional state may be referred to as power-up or start-up. During start-up, after the inactive state is ended and the memory device is in the process of entering the active mode, with read and/or write processes taking place in the start-up phase, correcting of errors occurring during the inactive state may be executed. Depending on a duration of the inactive state, for example during a relatively long inactive state, for example an inactive state lasting for several days or weeks, a relatively large number of errors may accumulate. Such a large number of errors may possibly not be correctable using the code used for correcting errors during the active phase. This may be a disadvantage.